package com.hmy.contract.dal.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hmy.ccp.common.po.BasePo;
import io.swagger.annotations.ApiModel;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @Description 合同Po对象
 * @Author seven.qi
 * @Date 2023/12/19 18:32
 * @Version 1.0
 */
@Getter
@Setter
@TableName("contract")
@ApiModel(value = "合同Po对象", description = "合同Po对象，对应数据库表contract")
public class ContractPo extends BasePo implements Serializable {
    private static final long serialVersionUID = 5877024396314851622L;

    /**
     * 合同id
     */
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long contractId;


    /**
     * 订单id
     */
    private Long orderId;
    /**
     * 订单编号-业务编号
     */
    private String orderNo;
    /**
     * 合同名称
     */
    private String contractName;
    /**
     * 合同编号-业务编号
     */
    private String contractNo;
    /**
     * 工程名称
     */
    private String projectName;
    /**
     * 订单详情信息，json数据，包括工程概况、设备需求、首次进场信息
     */
    private String orderDetailExtension;
    /**
     * 出租方名称
     */
    private String lessorName;
    /**
     * 出租方信息，json数据，包括出租方、地址、邮编、指定收款账号、开户行
     */
    private String lessorInfo;
    /**
     * 客户id
     */
    private Long customerId;
    /**
     * 客户名称
     */
    private String customerName;

    /**
     * 客户身份证号
     */
    private String customerIdCardNo;

    /**
     * 客户手机号
     */
    private String customerPhone;
    /**
     * 客户详细信息
     */
    private String customerExtension;
    /**
     * 授权人信息，json数组，包括姓名、身份证号、联系电话
     */
    private String authorizerInfo;
    /**
     * 销售经理id
     */
    private Long saleManagerId;
    /**
     * 销售经理姓名
     */
    private String saleManagerName;
    /**
     * 部门id
     */
    private Long deptId;
    /**
     * 合同类型，纸质合同，电子合同
     */
    private Integer contractType;
    /**
     * 合同任务id，当前为法大大id
     */
    private String contractTaskId;
    /**
     * 合同文件名称
     */
    private String contractFileName;
    /**
     * 合同文件地址
     */
    private String contractFileUrl;
    /**
     * 合同签署完成文件地址
     */
    private String contractSignFileUrl;
    /**
     * 合同签署链接
     */
    private String contractSignTaskUrl;
    /**
     * 合同状态，2位数字
     */
    private Integer status;
    /**
     * 关联任务id
     */
    private Long relationId;
    /**
     * 关联任务编号
     */
    private String relationNo;
    /**
     * 合同业务类型，进场单、退场单、补充协议等
     */
    private Integer businessType;
    /**
     * 合同业务数据
     */
    private String templateDataDetailExtension;
    /**
     * 合同参与方数据
     */
    private String actorDetailExtension;
    /**
     * 关联合同详情数据，json
     */
    private String relationContractDetailExtension;
    /**
     * 是否含有增补,0-不含，1-含
     */
    private Integer hasSupply;
    /**
     * 合同签署时间
     */
    private LocalDateTime signTime;
    /**
     * 流程id
     */
    private String processId;
    /**
     * 扩展字段
     */
    private String extendedFields;
    /**
     * 合同文件模式，1-法大大生成，2-文件
     */
    private Integer contractFileModel;
}
